#pragma once
#include "Position.h"
#include "color.h"
#include "Texture.h"
#include "DrawableElement.h"
#include "Sketcher.h"
#include "Circular.h"

class CircularObstacle  : public DrawableElement, public Circular
{

private:
	Color * lineColor;
	Texture * texture;
	Color * elementColor;
	Position * position;
	float radius;

public:
	CircularObstacle(void);

	virtual void setRadius(float radius);
	virtual float getRadius();

	virtual void setPosition(Position *position);

	virtual Position * getPosition();

	virtual Color * getElementColor();

	virtual void setElementColor( Color * color);

	virtual Color * getLineColor();

	virtual void setLineColor( Color * color);

	virtual Texture * getTexture();

	virtual void setTexture(Texture *texture);

	virtual void draw();

	virtual float getMinXPos();

	virtual float getMinYPos();

	virtual float getMaxXPos();

	virtual float getMaxYPos();

	virtual void evaluateCollision(Ball * ball);

public:
	~CircularObstacle(void);

};
